package com.xuecheng.learning.service;

import com.xuecheng.base.model.dto.PageResult;
import com.xuecheng.learning.model.dto.MyCourseTableParams;
import com.xuecheng.learning.model.dto.XcChooseCourseDto;
import com.xuecheng.learning.model.dto.XcCourseTablesDto;
import com.xuecheng.learning.model.po.XcCourseTables;
import org.springframework.web.bind.annotation.PathVariable;

/**
 * @author: Hes
 * @description 选课学习
 * @date: 2023/6/27 10:07
 */
public interface MyCourseTablesService {
    /**
     * 添加选课
     *
     * @param courseId
     * @return
     */
    public XcChooseCourseDto addChooseCourse(String userId, Long courseId);

    /**
     * 获取学习资格
     * * @return XcCourseTablesDto 学习资格状态 [{"code":"702001","desc":"正常学习"},
     * {"code":"702002","desc":"没有选课或选课后没有支付"},{"code":"702003","desc":"已过期需要申请续期或重新支付"}]
     *
     * @param userId
     * @param courseId
     * @return
     */
    public XcCourseTablesDto getLearningStatus(String userId, Long courseId);

    /**
     * 接受支付消息后，保存收费课程表
     *
     * @param chooseCourseId
     * @return
     */
    public boolean savecChooseCourseStaus(String chooseCourseId);
    /**
     * 我的课程表
     * @param params
     * @return
     */
    public PageResult<XcCourseTables> mycourestabls(MyCourseTableParams params);
}
